package com.bbva.general.dao.jdbc;

import java.sql.Types;
import java.util.HashMap;
import java.util.Map;

import javax.sql.DataSource;

import org.apache.log4j.Logger;

import org.springframework.jdbc.core.SqlParameter;
import org.springframework.jdbc.object.StoredProcedure;

import com.bbva.general.entities.DetalleCarga;

public class DetalleCargaDAOInsertar extends StoredProcedure {
	Logger log = Logger.getLogger(this.getClass());
	private static String strProcedure="IITG.SP_DETALLE_CARGA_INSERTAR";
	
	public DetalleCargaDAOInsertar(DataSource ds){
		super(ds, strProcedure);
		
		declareParameter(new SqlParameter("pIDCARGA", Types.CHAR));
		declareParameter(new SqlParameter("pFILA", Types.INTEGER));
		declareParameter(new SqlParameter("pIDENTIFICADOR", Types.VARCHAR));
		declareParameter(new SqlParameter("pMENSAJE_ERROR", Types.VARCHAR));
		declareParameter(new SqlParameter("pUSUARIO_CREACION", Types.CHAR));
		compile();
	}
	
	@SuppressWarnings(value={"unchecked"})
	public void Insertar(DetalleCarga objDetalle){
		Map parametros = new HashMap(8);
		parametros.put("pIDCARGA", objDetalle.getIdCarga());
		parametros.put("pFILA", objDetalle.getFila());
		parametros.put("pIDENTIFICADOR", objDetalle.getIdentificador());
		parametros.put("pMENSAJE_ERROR", objDetalle.getMensajeError());
		parametros.put("pUSUARIO_CREACION", objDetalle.getUsuarioCreacion());
		execute(parametros);
		
		log.info("El parametro es: " + objDetalle.getMensajeError());
	}
}
